Note: This tutorial assumes that you have completed the previous tutorials: Gazebo内世界を探索してみる.
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

地図を作成してナビゲーションを行う.

Description: ナビゲーション・スタックを使ってGazebo内世界の地図を作成し, それに基づいてナビゲーションを始めます

Keywords: simulation, gazebo, map building, navigation

Tutorial Level: INTERMEDIATE

Next Tutorial: 既知の地図内で自律的にナビゲーションする

概要

このチュートリアルでは, 仮想世界の地図作成し, それを利用して空間内でナビゲーションを行います. 基本的に, 地図作成地図を用いたナビゲーション のTurtleBotのチュートリアルをシミュレーションの世界の中でやり直すだけです. だから, TurtleBotのナビゲーションの利用に関する理解が疑わしければ, それらのチュートリアルが参考となります.

地図の作成

まず, クイックスタート・ガイド に従って, TurtleBotのシミュレーションを立ち上げますが, 今回はほんの少しだけ面白い世界を読み込みます:

$ source /opt/ros/hydro/setup.bash
$ roslaunch turtlebot_gazebo turtlebot_playground.launch

TurtleBot2とplayground世界の様子はこのようになります:

http://wiki.ros.org/turtlebot_simulator/Tutorials/hydro/Make a map and navigate with it?action=AttachFile&do=get&target=turtlebot_playground.png

Tip:

もちろん, 自分だけの世界を作ることもできます. Gazeboでは難しくないことなのですが, このチュートリアルの範囲からは外れます.

環境変数 TURTLEBOT_XXX を設定することによってシミュレーション上のTurtleBotをカスタマイズできます; 例えば:

$ export TURTLEBOT_BASE=create
$ export TURTLEBOT_STACKS=circles
$ export TURTLEBOT_3D_SENSOR=asus_xtion_pro
$ roslaunch turtlebot_gazebo turtlebot_playground.launch

以上は, Asus Xtion Pro camera を取り付けた TurtleBot 1 をシミュレートします.

注意:

Createとルンバ向けのGazeboのプラグインはHydroでは完全には動きませんので, 使用時はおかしな挙動に備えましょう.

地図の作成には, 以下のように打ち込みます:

roslaunch turtlebot_gazebo gmapping_demo.launch

RVizを使って, 地図作成の経過を可視化します.

$ roslaunch turtlebot_rviz_launchers view_navigation.launch

そして, 前項で説明したように, TurtleBotを任意の操縦ツールで地図が完成するまで空間内を走らせます. この画像は360度回転した後の地図作成の経過を示しています.

http://wiki.ros.org/turtlebot_simulator/Tutorials/hydro/Make a map and navigate with it?action=AttachFile&do=get&target=turtlebot_playground_rviz.png

最後に, 地図を保存します:

$ rosrun map_server map_saver -f <your map name>

playgroundでナビゲーションする

すべて上手くいったことを確認するため, 前のセクションで立ち上げたものをすべて止め, 地図作成以外の手順を繰り返します. 代わりに, 以下のようにタイプします:

roslaunch turtlebot_gazebo amcl_demo.launch map_file:=<full path to your map file>

もしくは, 作成済みの地図を使用したければ, map_fileの引数を省略します.

すると, navigate a map のチュートリアルにあるように, RVizのplayground内ならどこでもロボットを連れていくことができます.

Wiki: ja/turtlebot_simulator/Tutorials/hydro/Make a map and navigate with it (last edited 2014-10-08 06:45:07 by Moirai)